using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using bookMaster.AssetSystem.Shell.Clases;

namespace bookMaster.AssetSystem.Shell.Formas {
    public partial class frmBaseForm : Form {
        public frmBaseForm() {
            InitializeComponent();
        }

        #region Properties

        // Propiedades para mostrar los controles
        public bool MostrarInsertar { get { return this.ctlAdministration.MostrarInsertar; } set { this.ctlAdministration.MostrarInsertar = value; } }
        public bool MostrarModificar { get { return this.ctlAdministration.MostrarModificar; } set { this.ctlAdministration.MostrarModificar = value; } }
        public bool MostrarBorrar { get { return this.ctlAdministration.MostrarBorrar; } set { this.ctlAdministration.MostrarBorrar = value; } }
        public bool MostrarGuardar { get { return this.ctlAdministration.MostrarGuardar; } set { this.ctlAdministration.MostrarGuardar = value; } }
        public bool MostrarCancelar { get { return this.ctlAdministration.MostrarCancelar; } set { this.ctlAdministration.MostrarCancelar = value; } }
        public bool MostrarCopiar { get { return this.ctlAdministration.MostrarCopiar; } set { this.ctlAdministration.MostrarCopiar = value; } }
        public bool MostrarSeleccionar { get { return this.ctlAdministration.MostrarSeleccionar; } set { this.ctlAdministration.MostrarSeleccionar = value; } }
        public bool MostrarCancelarRegistro { get { return this.ctlAdministration.MostrarCancelarRegistro; } set { this.ctlAdministration.MostrarCancelarRegistro = value; } }
        public bool MostrarHabilitar { get { return this.ctlAdministration.MostrarHabilitar; } set { this.ctlAdministration.MostrarHabilitar = value; } }
        

        // Propiedades para habilitar los controles
        public bool EnableInsertar { get { return this.ctlAdministration.EnableInsertar; } set { this.ctlAdministration.EnableInsertar = value; } }
        public bool EnableModificar { get { return this.ctlAdministration.EnableModificar; } set { this.ctlAdministration.EnableModificar = value; } }
        public bool EnableBorrar { get { return this.ctlAdministration.EnableBorrar; } set { this.ctlAdministration.EnableBorrar = value; } }
        public bool EnableGuardar { get { return this.ctlAdministration.EnableGuardar; } set { this.ctlAdministration.EnableGuardar = value; } }
        public bool EnableCancelar { get { return this.ctlAdministration.EnableCancelar; } set { this.ctlAdministration.EnableCancelar = value; } }
        public bool EnableCopiar { get { return this.ctlAdministration.EnableCopiar; } set { this.ctlAdministration.EnableCopiar = value; } }
        public bool EnableSeleccionar { get { return this.ctlAdministration.EnableSeleccionar; } set { this.ctlAdministration.EnableSeleccionar = value; } }
        public bool EnableCancelarRegistro { get { return this.ctlAdministration.EnableCancelarRegistro; } set { this.ctlAdministration.EnableCancelarRegistro = value; } }
        public bool EnableHabilitar { get { return this.ctlAdministration.EnableHabilitar; } set { this.ctlAdministration.EnableHabilitar = value; } }
        
        
        #endregion

        #region Virtual Methods
        protected virtual void OnCommandEliminarClick() {

        }

        protected virtual void OnCommandCancelarClick() {

        }

        protected virtual void OnCommandCopiarClick() {

        }

        protected virtual void OnCommandGuardarClick() {

        }

        protected virtual void OnCommandAgregarClick() {

        }

        protected virtual void OnCommandModificarClick() {

        }

        protected virtual void OnCommandSeleccionarClick() {

        }

        protected virtual void OnCommandCancelarRegistroClick()
        {

        }

        protected virtual void OnCommandHabilitarClick()
        {

        }

        protected virtual void OnCommandCancelarPlanClick()
        {

        }

        #endregion

        #region Base Events

        private void ctlAdministration_BorrarClick(object sender, EventArgs e) {
            OnCommandEliminarClick();
        }

        private void ctlAdministration_CancelarClick(object sender, EventArgs e) {
            OnCommandCancelarClick();
        }

        private void ctlAdministration_CopiarClick(object sender, EventArgs e) {
            OnCommandCopiarClick();
        }

        private void ctlAdministration_GuardarClick(object sender, EventArgs e) {
            OnCommandGuardarClick();
        }

        private void ctlAdministration_InsertClick(object sender, EventArgs e) {
            OnCommandAgregarClick();
        }

        private void ctlAdministration_ModificarClick(object sender, EventArgs e) {
            OnCommandModificarClick();
        }

        private void ctlAdministration_SeleccionarClick(object sender, EventArgs e) {
            OnCommandSeleccionarClick();
        }

        private void ctlAdministration_CancelarContratoClick(object sender, EventArgs e)
        {
            OnCommandCancelarRegistroClick();
        }

        private void ctlAdministration_HabilitarClick(object sender, EventArgs e)
        {
            OnCommandHabilitarClick();
        }

        private void ctlAdministration_CancelarPlanClick(object sender, EventArgs e)
        {
            OnCommandCancelarPlanClick();
        }

        #endregion

    }
}